// pages/package/akForm/index.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    detail: {
      verification: true
    },
    formData: [{
      title: '应用名称',// 标题
      type: 'input', // 类型(组件内可扩展)
      key: 'useType', // 注入key
      isRequired: true, // 是否必填
      isEdit: true  // 是否可修改,默认:true
    },{
      title: '手机号码',
      type: 'input',
      key: 'phone',
      inputType: 'phone',
      isRequired: true
    }, {
      title: '应用标签',
      type: 'radioPicker',
      key: 'applicationIndustry',
      max: 3,
      array: [], // 可填默认值,也可根据请求返回
      isRequired: true,
    }, {
      title: '价格',
      type: 'input',
      key: 'caseMoney',
      inputType: 'price',
      placeholder: '请输入',
      unit: '万元',
      tips: '可输入至小数点后两位，售价为0时商品显示免费，不填则显示待议',
      isRequired: true,
    },  {
      title: '地区',
      type: 'area',
      key: 'address',
      isRequired: true
    },{
      title: '设置认证',
      customType: 'verification',
      key: 'verification',
      isRequired: true,
    }, {
      title: '是否已认证',
      type: 'boolean',
      isEdit: false,
      key: 'verification',
    }, {
      title: '公司详情(多行文本)',
      type: 'textarea',
      key: 'companyDetail',
      inputType: 'text',
      placeholder: '请输入',
      isRequired: true
    },{
      title: '案例介绍(富文本)',
      type: 'editor',
      key: 'introduction',
      inputType: 'text',
      placeholder: '请输入',
    }, {
      title: '上传图片',
      type: 'uploadFile',
      accept: 'image', // 上传类型: 可选值为all/media/image/file/video
      key: 'pictures',
      tips: '上传最多上传五张图片',
      max: 10, // 最大上传数量
    }, {
      title: '上传视频',
      type: 'uploadFile',
      accept: 'video', // 上传类型: 可选值为all/media/image/file/video
      key: 'video',
      maxSize: '104857600', // 文件大小,默认最大1G
      tips: '最多上传一个视频且不能超过100M',
      max: 1
    },  {
      title: '上传附件',
      type: 'uploadFile',
      accept: 'all',
      key: 'adjuct',
      maxSize: '104857600',
      tips: '最多上传10个附件且不能超过100M',
      max: 10
    }, ]
  },

  // ==================================  生命周期  ===============================
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.initDetail()
  },

  initDetail() {
    // 获取applicationIndustry选项
    wx.$AKHttp.getBasicCategory('e081cf85c304419a983029b1e37aff12').then(res => {
      // 更新对应的表单array
      const formData = this.data.formData
      this.updateFormArray(formData, "applicationIndustry", res.data.data)
      this.setData({
        formData
      })
    })
  },



  // ==================================  触发方法  ===============================
  // 触发-设置认证(自定义项)修改
  switchChange(e) {
    const detail = this.data.detail
    detail.verification = e.detail.value
    this.setData({
      detail
    })
    // 手动触发
    this.changeForm({
      detail: {
        formItem: {
          title: "设置认证(自定义项)"
        },
        index: 2,
        value: e.detail.value
      }
    })
  },
  // 触发-表单修改
  changeForm(e) {
    console.log("标题: ", e.detail.formItem.title)
    console.log(`输入第${e.detail.index}项`)
    console.log(`输入值: ${e.detail.value}`)
  },
  // 点击-保存
  clickSumbit() {
    this.formViewTarget.check()
    console.log("点击保存", this.data.detail)
    wx.showToast({
      title: '保存成功',
    })
  },



  // ==================================  功能方法  ===============================
  // 更新对应的表单array
  updateFormArray(formData, formKey, array) {
    // 找出
    for (let item of formData) {
      if (item.key == formKey) {
        item.array = array
        return
      }
    }
  },
})